package com.lxsh.sdk.common.cer.constants;

import com.hhlt.common.constants.CommonConstants;

import java.util.HashMap;
import java.util.Map;

/**
 * 业务常量
 *
 * @author qy.zhu 2018-10-09
 * @version 1.0
 * @since 1.0
 */
public class CerBLConstant extends CommonConstants {

    /**
     * 推荐使用窗体角色名
     */
    public static final String RECOMMEND_FORM_ROLE = "RECOMMEND_FORM";

    /**
     * 验证码存储key
     */
    public static final String SESSION_KEY = "SESSION_KEY_IMAGE_CODE";

    /**
     * 令牌前缀
     */
    public static final String LOGIN_USER_KEY = "login_user_key";

    /**
     * 登录用户 redis key
     */
    public static final String LOGIN_TOKEN_KEY = "login_tokens:";

    /**
     * Token前缀
     */
    public final static String TOKEN_PREFIX = "Bearer ";

    /**
     * 系统分表
     */
    public static Map<String,String> SYSTEM_TABLE_DIVISION = new HashMap<String,String>();

    /**
     * 表单区间检索开始
     */
    public final static String  FORM_SEARCH_RANGE_START = "_Start";

    /**
     * 表单区间检索开始
     */
    public final static String  FORM_SEARCH_RANGE_END = "_End";

    /**
     * 数据字典
     */
    public final static String T_BASEDATA_DICTIONARY = "T_BASEDATA_DICTIONARY";

    /**
     * 数据字典名
     */
    public final static String T_BASEDATA_DICTIONARY_NAME = "DICTIONARY_NAME";

    /**
     * 数据字典值
     */
    public final static String T_BASEDATA_DICTIONARY_VALUE = "DICTIONARY_CODE_VALUE";

    /**
     * 数据字典父级编码
     */
    public final static String T_BASEDATA_DICTIONARY_PARENT_CODE = "PARENT_CODE_VALUE";

    /**
     * 左连接
     */
    public final static String TABLE_ASSOSIATION_LEFT_JOIN = "LEFT JOIN";

    /**
     * ON
     */
    public final static String TABLE_ASSOSIATION_ON = " ON ";

    /**
     * 获取表中数据的条目数
     */
    public final static String SQL_GET_TABLE_DATA_COUNT = "SELECT COUNT(1) FROM {0}";

    /**
     * 获取表中数据的条目数
     */
    public final static String ORACLE_SQL_GET_TABLE_DATA_TOP_1 = "SELECT * FROM {0} WHERE ROWNUM = 1";

    /**
     * 删除表SQL
     */
    public final static String SQL_DROP_TABLE = "DROP TABLE {0}";

    /**
     * 默认表结构信息获取标识
     */
    public final static String DEFAULT_TABLE_INFO = "DEFAULT";


    /**
     * 是否允许多选：多选
     */
    public final static String MULTIPLE_SELECT_Y = "0";

    /**
     * 是否允许多选：单选
     */
    public final static String MULTIPLE_SELECT_N = "1";

    /**
     * 菜单分类根级分类
     */
    public final static String BASE_MENU_ID = "0";

    /**
     * 数据字典：parentID 默认
     */
    public final static long DICTIONARY_PARENT_DEFAULT = 0;

    /**
     * 数据字典负责编码字典的字典
     */
    public final static String DICTIONARY_CODE = "CODE";

    /**
     * 能否操作（0：可操作 1：不可操作）
     */
    public final static String CANBE_OPERATE_0 = "0";

    /**
     * 能否操作（0：可操作 1：不可操作）
     */
    public final static String CANBE_OPERATE_1 = "1";

    /**
     * 工厂用户跳转工厂页面的标识
     */
    public final static String USER_FACTORY_FLAG = "USERFACTORYFLAG";

    /**
     * 删除工厂或者仓库的用户绑定的标识
     */
    public final static String BIND_USERCODE_DELETE_FLAG = "BINDUSERCODEDELETEFLAG";

    /**
     * 下拉框是顶级组织节点
     */
    public final static String COMB_IS_FIRST_NODE = "0";

    /**
     * 栈板拆零，箱条码解除
     */
    public static final int DEL_FLAG_5 = 5;

    /**
     * 数据字段父节点为LANGUAGE_TYPE
     */
    public static final String LANGUAGE_TYPE = "LANGUAGE_TYPE";

    /**
     * 英文空格
     */
    public static final String EN_STRING_SPLIT_BLANK = " ";

    /**
     * 中文空格
     */
    public static final String ZH_STRING_SPLIT_BLANK = " ";


    /**
     * 定时任务运行状态（0：启动 1：停止）
     */
    public final static Integer SCHEDULER_RUN_STATUS_0 = 0;

    /**
     * 定时任务运行状态（0：启动 1：停止）
     */
    public final static Integer SCHEDULER_RUN_STATUS_1 = 1;

    /**
     * 是：0
     */
    public final static Integer YES_FLAG = 0;

    /**
     * 否：0
     */
    public final static Integer NO_FLAG = 1;

    /**
     * 语言类型：中文
     */
    public final static String LANGUAGE_TYPE_ZH = "zh_CN";

    /**
     * 默认最高职位：'0'
     */
    public final static String TOP_POSITION = "0";

    /**
     * 默认最高行政单位：'0'
     */
    public final static long TOP_POLITICS = 0;

    /**
     * 账户开锁状态标识：0
     */
    public final static String ACCOUNT_LOCK_FLAG = "0";

    /**
     * 部门最高等级的标识：0
     */
    public final static String Top_DEPARTMENT_FLAG = "0";

    /**
     * 分隔符问号：?
     */
    public final static String STRING_SPLIT_QUESTION_MARK = "?";

    /**
     * 无效数据：99
     * （添加数据场合暂时将数据删除状态设置为无效数据，在之后某个节点设置为正常或者删除状态等）
     */
    public static final int DEL_FLAG_99 = 99;

    /**
     * 用户工厂标识
     */
    public static final String USER_FACTORY = "USER_FACTORY";

    /**
     * 用户仓库标识
     */
    public static final String USER_WAREHOUSE = "USER_WAREHOUSE";

    /**
     * 是：0
     */
    public final static String YES_TEXT_ZH_CN = "是";

    /**
     * 否：0
     */
    public final static String NO_TEXT_ZH_CN = "否";

    /**
     * 流程内容类型主要流程
     */
    public static final String FLOW_CONTENT_TYPE_MAIN_FLOW = "0";

    /**
     * 流程内容类型附属流程
     */
    public static final String FLOW_CONTENT_TYPE_ATTACHMENT_FLOW = "1";

    public static final String TRUE_FLAG = "true";


    public static final String FALSE_FLAG = "false";

    public static final String NULL_STR="null";

    /**
     * 用户选择的工厂
     */
    public final static String USER_SELECT_FACTORY = "user:factory:{0}";

    /**
     * 用户选择的租户
     */
    public final static String USER_SELECT_TENANCY = "user:tenancy:{0}";

    /**
     * 异步导出Excel EXECUTOR
     */
    public final static String EXECUTOR_ASYNC_EXPORT_EXCEL = "executorAsyncExportExcel";
}
